package com.ruoyi.activity.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p>
 * 流程业务关系实体类
 * </p>
 *
 * @author yanfu
 * @since 2024-03-01
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "ActBusinessFlowRel", description = "流程业务关系")
@TableName("act_business_flow_rel")
public class ActBusinessFlowRel implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "PROC_REL_ID", type = IdType.AUTO)
    @ApiModelProperty("流程与业务关系id")
    private Integer procRelId;

    @TableField("BUSINESS_TYPE")
    @ApiModelProperty("业务类型")
    private String businessType;

    @TableField("BUSINESS_ID")
    @ApiModelProperty("业务ID")
    private String businessId;

    @TableField("FLOW_KEY")
    @ApiModelProperty("流程标识")
    private String flowKey;

    @TableField("FLOW_NAME")
    @ApiModelProperty("流程名称")
    private String flowName;

    @TableField("SEND_USER_NAME")
    @ApiModelProperty("发起人名称")
    private String sendUserName;

    @TableField("SEND_USER_ID")
    @ApiModelProperty("发起人ID")
    private String sendUserId;

    @TableField("SEND_DATE")
    @ApiModelProperty("发起时间")
    private LocalDateTime sendDate;

    @TableField("PROC_INST_ID")
    @ApiModelProperty("流程实例ID")
    private String procInstId;

    /**
     * 流程状态 0未提交 1审核中 2已完成 3退回 4已撤回 5修改后同意 6不同意
     */
    @TableField("FLOW_STATE")
    @ApiModelProperty("流程状态 0未提交 1审核中 2已完成 3退回 4已撤回 5修改后同意 6不同意")
    private Integer flowState;

    @TableField("HIS_HANDLER_ID")
    @ApiModelProperty("历史审核人ID")
    private String hisHandlerId;

    @TableField("HIS_HANDLER_NAME")
    @ApiModelProperty("历史审核人名称")
    private String hisHandlerName;

    @TableField("PROC_HANDLER_ID")
    @ApiModelProperty("下一审核人ID")
    private String procHandlerId;

    @TableField("PROC_HANDLER_NAME")
    @ApiModelProperty("下一审核人名称")
    private String procHandlerName;

    @TableField("TASK_NAME")
    @ApiModelProperty("当前审批节点")
    private String taskName;

    @TableField("CDATE")
    @ApiModelProperty("创建时间")
    private LocalDateTime cdate;

    @TableField("MDATE")
    @ApiModelProperty("电影名称")
    private LocalDateTime mdate;


}
